package com.ruoyi.restaurant.domain;

import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 订单管理对象 tb_order
 * 
 * @author Zhang
 * @date 2023-11-26
 */
public class TbOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 编号 */
    @Excel(name = "编号")
    private Long id;

    /** 订单编码 */
    @Excel(name = "订单编码")
    private String orderCode;

    /** 订单所属餐桌 */
    @Excel(name = "订单所属餐桌")
    private Long tableId;

    /** 总价 */
    @Excel(name = "总价")
    private Long totalPrice;

    /** 0已下单未付款 1已付款 */
    @Excel(name = "0已下单未付款 1已付款")
    private Long orderStatus;

    /** 下单时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "下单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderDate;

    /** 付款时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "付款时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date payDate;

    /** 订单更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "订单更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /** 0 未删 1已删 */
    private Long disabled;

    /** 订单详细管理信息 */
    private List<TbOrderDetail> tbOrderDetailList;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setOrderCode(String orderCode) 
    {
        this.orderCode = orderCode;
    }

    public String getOrderCode() 
    {
        return orderCode;
    }
    public void setTableId(Long tableId) 
    {
        this.tableId = tableId;
    }

    public Long getTableId() 
    {
        return tableId;
    }
    public void setTotalPrice(Long totalPrice) 
    {
        this.totalPrice = totalPrice;
    }

    public Long getTotalPrice() 
    {
        return totalPrice;
    }
    public void setOrderStatus(Long orderStatus) 
    {
        this.orderStatus = orderStatus;
    }

    public Long getOrderStatus() 
    {
        return orderStatus;
    }
    public void setOrderDate(Date orderDate) 
    {
        this.orderDate = orderDate;
    }

    public Date getOrderDate() 
    {
        return orderDate;
    }
    public void setPayDate(Date payDate) 
    {
        this.payDate = payDate;
    }

    public Date getPayDate() 
    {
        return payDate;
    }
    public void setUpdateDate(Date updateDate) 
    {
        this.updateDate = updateDate;
    }

    public Date getUpdateDate() 
    {
        return updateDate;
    }
    public void setDisabled(Long disabled) 
    {
        this.disabled = disabled;
    }

    public Long getDisabled() 
    {
        return disabled;
    }

    public List<TbOrderDetail> getTbOrderDetailList()
    {
        return tbOrderDetailList;
    }

    public void setTbOrderDetailList(List<TbOrderDetail> tbOrderDetailList)
    {
        this.tbOrderDetailList = tbOrderDetailList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderCode", getOrderCode())
            .append("tableId", getTableId())
            .append("totalPrice", getTotalPrice())
            .append("orderStatus", getOrderStatus())
            .append("orderDate", getOrderDate())
            .append("payDate", getPayDate())
            .append("updateDate", getUpdateDate())
            .append("disabled", getDisabled())
            .append("tbOrderDetailList", getTbOrderDetailList())
            .toString();
    }
}
